#include <iostream>
#include <string>
using namespace std;

// 声明图书管理员类，以便图书馆类能提前知道其存在
class Librarian;

// 图书馆类，拥有珍贵的藏书
class Library {
private:
    string secretDocument = "Original copy of rare manuscript";

    // 声明图书管理员为友元类，允许其访问所有私有成员
    friend class Librarian;

public:
    Library() {}
};

// 图书管理员类，能够访问图书馆的藏书
class Librarian {
public:
    void revealSecret(const Library& lib) {
        cout << "Librarian accesses the library's secret: " << lib.secretDocument << endl;
    }
};

int main() {
    Library library;
    Librarian librarian;
    librarian.revealSecret(library);  // 图书管理员揭示了图书馆的珍贵藏书

    return 0;
}